var http = require('http'),  
superagent = require('superagent'),  
async=require('async'),
cheerio = require('cheerio'),  
mongoose = require('mongoose'),  
mongourl = 'mongodb://127.0.0.1:27017',
pageNum = 100

require('superagent-proxy')(superagent);
var proxy = process.env.http_proxy || 'http://H21XTU8514I45CDD:EE3F8E452496F88F@proxy.abuyun.com:9020';
var city = require('./city');
// 8d558e118f32f66f06fe9e5290cf10f0高德key
var citys=[]

for(var i=0;i<city.length;i++){
    citys.push(city[i].city)
}

// console.log(citys)
var pageUrls=[]
for(var i = 1; i <= pageNum; i++){  
pageUrls.push('https://www.dianping.com/guangzhou/hotel/p'+i)
}  
mongoose.Promise = global.Promise; 
mongoose.connect(mongourl,{useMongoClient:true});  
var Schema = mongoose.Schema;  
//骨架模版  
var movieSchema = new Schema({  
    0: String,
    1: String,
    2: String,
    3: String,
    4: String,
    5: String,
    6: String,
    7: String,
    8: String,
    9: String,
    10: String,
    11: String,
    12: String
})  
//模型  
var Movie = mongoose.model('Movie', movieSchema);  
//存储数据  


var city2=[]
var actCity=[]
var allList=[]
var all=[]
var quanbu=[]
superagent.get("http://b2b.11467.com/")
    // .proxy(proxy)
    .end(function(err,page){
        var $ = cheerio.load(page.text); 
        for(var i=0;i<$("#il .box.t5").eq(4).find(".boxcontent .listtxt a").length;i++){
            city2.push($("#il .box.t5").eq(4).find(".boxcontent .listtxt a").eq(i).text()+'市')
            for(var j=0;j<citys.length;j++){
                if(citys[j]==city2[i]){
                    // 得到84个城市的url  actCity
                    actCity.push($("#il .box.t5").eq(4).find(".boxcontent .listtxt a").eq(i).attr("href"))
                }
            }
        }
        // 遍历每个城市所有分类
        // actCity.forEach(function(act){
            async function printData(){
                await getData()
                console.log(allList)
            }
        // })
              
            function getData(){
                superagent.get('https://www.11467.com/shenzhen/'+'dir/old.htm')
                // .proxy(proxy)
                .end(function(err1,page1){
                    var $$=cheerio.load(page1.text);
                    for(var er=0;er<$$("#il .box.sidesubcat a").length;er++){
                        //得到每个城市的二级分类url  allList
                        allList.push($$("#il .box.sidesubcat a").eq(er).attr("href"))
                    }
                    console.log(11)
                    // geterji(allList)
                })
            }
            printData()


        // 遍历每个城市的二级分类
        function geterji(allList){
            allList.forEach(function(list){
                superagent.get('https://www.11467.com/shenzhen/dir/a.htm')
                    // .proxy(proxy)
                    .end(function(err,page){
                        var $$=cheerio.load(page.text);
                        for(var er=0;er<$$("#il .box.sidesubcat a").length;er++){
                            //得到每个城市的三级分类url  all
                            all.push($$("#il .box.sidesubcat a").eq(er).attr("href"))
                        }
                        // getsanji()
                    })
            })
        }
        // 遍历每个城市的三级分类
        function getsanji(){
            // all.forEach(function(a){
                superagent.get('https://www.11467.com/shenzhen/dir/a01.htm')
                    // .proxy(proxy)
                    .end(function(err,page){
                        var $$=cheerio.load(page.text);
                        //获取总页数pages
                        var pages=parseInt($$("#il .pages a:last-child").attr("href").slice(-6).replace(/[^0-9]+/g, ''))
                        for(var i=1;i<=pages;i++){
                            //请求每一页
                            superagent.get($$("#il .pages a").eq(0).attr("href").slice(0,-4)+'-p'+i+'.htm')
                                // .proxy(proxy)
                                .end(function(err1,page1){
                                    var $$$=cheerio.load(page.text);
                                    //得到所有公司url  quanbu
                                    quanbu.push($$$("#il .companylist li h4 a").attr("href"))
                                    getCompany()
                                })
                        }
                    })
            // })
        }
        // 遍历所有公司
        function getCompany(){
            // quanbu.forEach(function(q){
                superagent.get('http://www.11467.com/shenzhen/co/728184.htm')
                    // .proxy(proxy)
                    .end(function(err,page){
                        var $$=cheerio.load(page.text);
                        var info={
                            0:$$("#contact dd").eq(0).text(),
                            1:$$("#contact dd").eq(1).text(),
                            2:$$("#contact dd").eq(2).text(),
                            3:$$("#contact dd").eq(4).text(),
                            4:$$("#contact dd").eq(5).text(),
                            5:$$("#gongshang tr").eq(0).find("td").eq(1).text(),
                            6:$$("#gongshang tr").eq(1).find("td").eq(1).text(),
                            7:$$("#gongshang tr").eq(2).find("td").eq(1).text(),
                            8:$$("#gongshang tr").eq(5).find("td").eq(1).text(),
                            9:$$("#gongshang tr").eq(8).find("td").eq(1).text(),
                            10:$$("#gongshang tr").eq(9).find("td").eq(1).text(),
                            11:$$("#gongshang tr").eq(10).find("td").eq(1).text(),
                            12:$$("#gongshang tr").eq(11).find("td").eq(1).text()
                        }
                        var moive = new Movie(info)  
                        console.log(info)

                        moive.save(function(err) {
                            if (err) {  
                                console.log('保存失败')  
                                return;  
                            }else{
                                console.log('ok')
                            }              
                        }) 
                    })
            // })
        }
    })




// pageUrls.forEach(function(pageUrl){
// superagent.get(pageUrl)  
// .end(function(err,page){  
//     var $ = cheerio.load(page.text);  
//     var quoteUrls = $('li.hotel-block');  
//     for(var i = 0;i < quoteUrls.length; i++){  
//         var articalUrl =quoteUrls.eq(i).find(".hotel-name-link").text();  
//         var moive = new Movie({  
//             name : articalUrl  
//         })  
//         //保存数据库  
//         moive.save(function(err) {  
//             if (err) {  
//                 console.log('保存失败')  
//                 return;  
//             }              
//         })  
//     }  
// })  
// })  